package modelo.dao.impl;

import modelo.bean.Professor;

public class ProfessorDAOImpl extends UsuarioDAOImpl {
	public ProfessorDAOImpl(Professor professor) {
		super(professor);
	}

	// @Override
	// public Professor recuperar(Long id) {
	// try {
	// abreTx();
	// System.out.println("entrou recuperar");
	// Usuario u = em.find(Usuario.class, id);
	// Professor professor = (Professor) u;
	// System.out.println("Usuario " + u.getMatricula());
	// System.out.println("Professor " + professor.getCargaHoraria());
	//
	// return professor;
	// } catch (Exception e) {
	// e.getMessage();
	// return null;
	// } finally {
	// // fechaConexao();
	// }
	//
	// }
	//
	// @SuppressWarnings("unchecked")
	// @Override
	// public List<Professor> listarTodos() {
	// try {
	// abreTx();
	// Query query = em.createQuery("select p from Professor p");
	// return query.getResultList();
	// } catch (Exception e) {
	// e.getMessage();
	// return null;
	// } finally {
	// // fechaConexao();
	// }
	//
	// }
	//
	// @Override
	// public boolean criar(Professor professor) {
	// try {
	// abreTx();
	// em.persist(professor);
	// commitar();
	//
	// return true;
	// } catch (Exception e) {
	// e.printStackTrace();
	// return false;
	// } finally {
	// // fechaConexao();
	// }
	//
	// }
	//
	// @Override
	// public boolean deletar(Long id) {
	// try {
	// abreTx();
	// Professor professor = em.find(Professor.class, id);
	// em.remove(professor);
	// commitar();
	// return true;
	// } catch (Exception e) {
	// e.printStackTrace();
	// return false;
	// } finally {
	// // fechaConexao();
	// }
	// }
	//
	// @Override
	// public boolean editar(Professor professor) {
	// try {
	// abreTx();
	// em.merge(professor);
	// commitar();
	//
	// return true;
	// } catch (Exception e) {
	// e.printStackTrace();
	// return false;
	// } finally {
	// // fechaConexao();
	// }
	// }
	//
	// private void abreTx() {
	// // if (em == null) {
	// // em = FabricaConexao.getEntityManager();
	// // }
	// em.getTransaction().begin();
	// }
	//
	// // private void fechaConexao() {
	// // if (em.isOpen()) {
	// // em.close();
	// // }
	// // }
	//
	// private void commitar() {
	// em.getTransaction().commit();
	// }
}
